On Demand Email Response

ABSTRACT

An improvement to an electronic mail program is disclosed. In particular, the improved electronic mail program enables a user to mark individual action items within a message and set attributes for each action item. In the preferred embodiment, attributes include priority, deadline, abstract, and responsibility. The electronic mail program stores the action items and associated attributes in a database and sends the message to one or more recipients. The electronic mail program then displays the message and action items to the recipients. Message recipients then navigate through the list of action items to read descriptions and to determine the priority and nature of the actions necessary. The responsibility attribute further indicates which recipient should respond to the action item. The improved electronic mail program updates the status of each action item in the database as recipients respond.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This Application is a continuation of and claims the benefit of priorityto U.S. patent application Ser. No. 10/955,199, filed on Sep. 30, 2004and entitled “On Demand Email Response,” the contents of which arehereby incorporated by reference.

FIELD OF THE INVENTION

The invention described below generally relates to a data processingsystem and method for transferring data between a plurality ofcomputers. In particular, the invention described below comprisessubject matter related to priority processing of user data in responseto a demand to transfer data between computers.

BACKGROUND OF THE INVENTION

Currently, email clients such as MICROSOFT OUTLOOK and LOTUS NOTESenable a user to exchange electronic messages with other users throughnetworked email servers. These email clients typically display to a usera list of messages that the user has received. If the user wants to viewthe full message, the user selects the message from the displayed listand the email client renders the selected message on the display device.

Many common email clients also enable a message author to mark themessage with a priority attribute, such as “urgent,” before sending themessage. Generally, these email clients also enable a message recipientto sort or group messages by attributes, including the priorityattribute. U.S. Pat. No. 5,694,616 (issued Dec. 2, 1997), for instance,describes a system for sorting messages by comparison—if a new messagedoes not contain a priority listing it will be displayed below any oldermessages that have been marked as “urgent” or the like. U.S. PatentApplication No. US 2002/0120702 A1 (published Aug. 29, 2002), incontrast, describes a bidding process that determines the priority ofmessages. When sending a message, a user specifies the initial prioritybid and a maximum priority bid. These bids represent some type ofmaterial value such as cash. Upon delivery, the recipient's email clientdisplays the contents of the inbox in accordance with the currentpriority bid amount. When a new message has a higher initial bid thananother message's current bid, the older message's amount is increasedto a higher level than the new message. The new message also can raiseits bid level in an attempt to become the highest priority of thesender. The data processing system automatically performs thesecalculations and allows senders to bid on their message's prioritylisting.

As described above, current systems allow a message author to send themessage with a certain level of priority. The novelty of simply markinga message as “urgent,” however, has worn off as more and more usersclassify their messages as one of the highest priority. A major problemwith this new over-prioritization occurs when a sender has a number ofrelated questions or tasks, in which some have a higher priority thanothers.

Of course, the author manually could split the questions or tasks intoseparate messages according to priority. This technique, though,increases the author's preparation time and, potentially, overwhelms therecipient with incoming messages. Alternatively, the author couldprepare a single message with detailed instructions to the recipientthat indicate each item's priority and deadline. Again, though, thistechnique increases the author's preparation time, as well as thepotential for mistake, ambiguity, or confusion within the instructionsthemselves. Such messages also are likely to be much longer than theoriginal message, which might discourage the recipient from reading theentire message. In the worst case scenario, the recipient might beginresponding without ever reading the instructions.

Clearly, existing techniques have significant drawbacks, and there is aneed in the art for a more effective means of prioritizing andprocessing specific items within an email message. The inventiondescribed in detail below addresses this need. This and other objects ofthe invention will be apparent to those skilled in the art from thefollowing detailed description of a preferred embodiment of theinvention.

SUMMARY OF THE INVENTION

The invention described below is a useful improvement to an electronicmail program. In particular, the improved electronic mail programenables a user to mark individual action items within a message and setattributes for each action item. In the preferred embodiment, attributesinclude priority, deadline, abstract, and responsibility. The electronicmail program stores the action items and associated attributes in adatabase and sends the message to one or more recipients. The electronicmail program then displays the message and action items to therecipients. Message recipients then navigate through the list of actionitems to read descriptions and to determine the priority and nature ofthe actions necessary. The responsibility attribute further indicateswhich recipient should respond to the action item. The improvedelectronic mail program updates the status of each action item in thedatabase as recipients respond.

BRIEF DESCRIPTION OF DRAWINGS

The novel features believed characteristic of the invention are setforth in the appended claims. The invention itself, however, as well asa preferred mode of use, further objectives and advantages thereof, willbe understood best by reference to the following detailed description ofan illustrative embodiment when read in conjunction with theaccompanying drawings, wherein:

FIG. 1 illustrates an exemplary network of hardware devices;

FIG. 2 represents a memory having the components of the improvedelectronic mail program;

FIG. 3A depicts the interaction of the improved email system with amessage sender; and

FIG. 3B depicts the interaction of the improved email system with amessage recipient.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The principles of the present invention are applicable to a variety ofcomputer hardware and software configurations. The term “computerhardware” or “hardware,” as used herein, refers to any machine orapparatus that is capable of accepting, performing logic operations on,storing, or displaying data, and includes without limitation processorsand memory; the term “computer software” or “software,” refers to anyset of instructions operable to cause computer hardware to perform anoperation. A “computer,” as that term is used herein, includes withoutlimitation any useful combination of hardware and software, and a“computer program” or “program” includes without limitation any softwareoperable to cause computer hardware to accept, perform logic operationson, store, or display data. A computer program may, and often is,comprised of a plurality of smaller programming units, including withoutlimitation subroutines, modules, functions, methods, and procedures.Thus, the functions of the present invention may be distributed among aplurality of computers and computer programs. The invention is describedbest, though, as a single computer program that configures and enablesone or more general-purpose computers to implement the novel aspects ofthe invention. For illustrative purposes, the inventive computer programwill be referred to as the “electronic mail program.”

Additionally, the electronic mail program is described below withreference to an exemplary network of hardware devices, as depicted inFIG. 1. A “network” comprises any number of hardware devices coupled toand in communication with each other through a communications medium,such as the Internet. A “communications medium” includes withoutlimitation any physical, optical, electromagnetic, or other mediumthrough which hardware or software can transmit data. For descriptivepurposes, exemplary network 100 has only a limited number of nodes,including workstation computer 105, workstation computer 110, servercomputer 115, and persistent storage 120. Network connection 125comprises all hardware, software, and communications media necessary toenable communication between network nodes 105-120. Unless otherwiseindicated in context below, all network nodes use publicly availableprotocols or messaging services to communicate with each other throughnetwork connection 125.

Electronic mail program 200 typically is stored in a memory, representedschematically as memory 220 in FIG. 2. The term “memory,” as usedherein, includes without limitation any volatile or persistent medium,such as an electrical circuit, magnetic disk, or optical disk, in whicha computer can store data or software for any duration. A single memorymay encompass and be distributed across a plurality of media. Thus, FIG.2 is included merely as a descriptive expedient and does not necessarilyreflect any particular physical embodiment of memory 220. As depicted inFIG. 2, though, memory 220 may include additional data and programs. Ofparticular import to electronic mail program 200, memory 220 may includemessage database 230, with which electronic mail program 200 interacts.A person of skill in the art will appreciate that a database, such asmessage database 230, may exist in many forms. As used herein, the term“database” means any collection of data stored together and organizedfor rapid search and retrieval, including without limitation flat filedatabases, fielded databases, full-text databases, object-orienteddatabases, and relational databases.

FIG. 3A depicts the interaction of a sender with electronic mail program200. First, the sender composes an electronic mail message that includesone or more action items (e.g. questions or tasks) (310). The messagegenerally includes basic information regarding the purpose of thecommunication, in addition to data common to all email messages, such asthe date and time, the sender's name, the subject of the message, andthe list of recipients. In the preferred embodiment, the sender markseach action item (320), using a mouse, keyboard, or similar inputdevice.

The sender then sets each action item's attributes (325). Theseattributes allow the sender to create a list that gives recipients theability to quickly glean the important portions of the message withoutwasting time wading through detailed paragraphs with extensivebackground. Attributes include priority, deadline, abstract, andresponsibility. Unlike priority attributes associated with conventionalemail clients, though, the sender can use a priority attribute withelectronic mail program 200 to mark each separate action item within asingle message with varying levels of urgency. Thus, a sender caninclude both urgent and regular questions in a single message whileavoiding the confusion inherent in other priority solutions that onlyallow priority to be set for a message as a whole. The deadlineattribute gives the recipient a date and time for responding to theaction item, i.e. providing an answer or completing a task. Manyconventional email client programs also include a calendar, to which, inone embodiment of electronic mail program 200, the sender can import thedeadline attributes. With the deadline, alarms may be set fornotification if responses are still pending. The sender also may includean abstract attribute with each particular action item. If an itemrequires a detailed description in order to present a question, ageneral abstract can be included to provide either an overview of thequestion or subject-matter. Optionally, electronic mail program 200could set the abstract attribute automatically by inserting the firstsentence of the item, if the sender does not specify the abstractattribute. Finally, an attribute for responsibility allows a sender tosend several action items to multiple recipients, while assigningindividual items to particular recipients. If the message containsadditional action items (330), then the sender repeats this processuntil all action items have been marked and the attributes of eachaction item set. Electronic mail program 200 then stores the messagedata, which includes the action items and associated attributes, indatabase 340 (335), and sends the message data to the recipients (340)

FIG. 3B depicts the interaction between a message recipient andelectronic mail program 200, wherein the message includes a list ofaction items prepared in accordance with the above process. Afterreceiving the message, the recipient opens the message (350). In thepreferred embodiment, electronic mail program 200 receives the actionitems as either a link to the message data in database 340, or as anattachment having the same message data. Electronic mail program 200retrieves the action items and attributes (355) from database 340, andthen displays the action items and attributes in a new window (365). Inan alternative embodiment, electronic mail program 200 displays theaction items in the original message window, but then displays theattributes in a “pop-up” window as the recipient moves a cursor overeach action item. The recipient also can import deadlines into acalendar and set alarms, so that the calendar system reminds therecipient of approaching deadlines. After viewing an action item, arecipient responds to the action item (370). A response may include ananswer to a question, an initial assessment, or an indication that moretime will be needed to provide an answer. The recipient can respond toindividual action items through a button or link included with eachitem. Thus, a recipient can respond to higher priority items quickly,without immediately responding to low-priority items. Electronic mailprogram 200 updates the message data in database 340 as the recipientresponds to an action item (375). If the recipient needs to respond toadditional action items (380), the recipient repeats the process.Electronic mail program 200 then displays the status of responses to thesender and other recipients (385).

Electronic mail program 200, in conjunction with database 340 clearlyoffers users significant advantages over conventional electronic mailprograms. In particular, they enable a sender to present all actionitems, especially questions, in a list so a recipient easily can viewthe questions, separate from any other information or context that thesender provides. Perhaps most significant, though, is that electronicmail program 200 allows both the sender and recipient to maintain amaster list of all action items that is sortable by deadline, priority,recipient, status, or any other attribute. Electronic mail program 200also enables all correspondents to “drill down” through the history ofmessages, and to view the thread of individual action items, responses,further action items, and clarifications. This feature eliminates theneed to sort through the surrounding questions and information.Conventional electronic mail programs only drill down from message tomessage, where the thread is composed of messages in their entirety,rather than individual action items.

A preferred form of the invention has been shown in the drawings anddescribed above, but variations in the preferred form will be apparentto those skilled in the art. The preceding description is forillustration purposes only, and the invention should not be construed aslimited to the specific form shown and described. The scope of theinvention should be limited only by the language of the followingclaims.

What is claimed is:
 1. A method for updating a plurality of requestedactions, the method comprising: assigning, by one or more processors,first and second priorities or deadlines to first and second respectiveactions to be performed by first and second participants, respectively;receiving, by one or more processors, a message addressed from a senderto the first and second participants requesting the first and secondparticipants to perform the first and second respective actions with thefirst and second respective priorities or deadlines; sending, by one ormore processors, the message to first and second computers of the firstand second participants, respectively; and responsive to receipt of themessage by the first computer of the first participant, one or moreprocessors of the first computer initiating display of the message atthe first computer to the first participant, receiving from the firstparticipant (a) a complete response to the first action, (b) an initialassessment of the first action, or (c) an indication that more time willbe needed to provide a complete response to the first action, updatingthe message with the complete response, initial assessment of indicationthat more time will be needed as received from the first participant,and sending the updated message to the second computer of the secondparticipant for display, such that the second participant receives boththe message before the update and subsequently, the updated message. 2.The method of claim 1, wherein the first and second priorities ordeadlines includes a priority for the first participant to perform thefirst action compared to other actions assigned to first participant. 3.The method of claim 1, wherein the first and second priorities ordeadlines includes a deadline for the first participant to perform thefirst action.
 4. The method of claim 3, wherein the message includes adescription of the second action.
 5. The method of claim 3, furthercomprising: inserting, by one or more processors, the deadline into acalendar of the first participant in response to the receipt of themessage.
 6. The method of claim 3, further comprising: inserting, by oneor more processors, the deadline into a calendar of a sender of themessage.
 7. The method of claim 3, further comprising: sending, by oneor more processors, a reminder based on a determination that thedeadline is expiring.
 8. A data processing system for updating aplurality of requested actions, the data processing system comprising:one or more processors, a computer-readable storage device, and amemory; first program instructions to (a) assign first and secondpriorities or deadlines to first and second respective actions to beperformed by first and second participants, respectively, (b) receive amessage addressed from a sender to the first and second participantsrequesting the first and second participants to perform the first andsecond respective actions with the first and second respectivepriorities or deadlines, and (c) send the message to first and secondcomputers of the first and second participants, respectively; and secondprogram instructions, responsive to receipt of the message by the firstcomputer of the first participant, to initiate display of the message atthe first computer to the first participant, receive from the firstparticipant (a) a complete response to the first action, (b) an initialassessment of the first action, or (c) an indication that more time willbe needed to provide a complete response to the first action, update themessage with the complete response, initial assessment of indicationthat more time will be needed as received from the first participant,and send the updated message to the second computer of the secondparticipant for display, such that the second participant receives boththe message before the update and subsequently, the updated message,wherein the first program instructions and the second programinstructions are stored on the storage device for execution by the oneor more processors via the memory.
 9. The data processing system ofclaim 8, wherein the first and second priorities or deadlines includes apriority for the first participant to perform the first action comparedto other actions assigned to first participant.
 10. The data processingsystem of claim 8, wherein the first and second priorities or deadlinesincludes a deadline for the first participant to perform the firstaction.
 11. The data processing system of claim 8, wherein the messageincludes a description of the second action.
 12. The data processingsystem of claim 10, further comprising: third program instructions,responsive to the receipt of the message, to insert the deadline into acalendar of the first participant, wherein the third programinstructions are stored on the storage device for execution by the oneor more processors via the memory.
 13. The data processing system ofclaim 10, further comprising: third program instructions, to insert thedeadline into a calendar of a sender of the message, wherein the thirdprogram instructions are stored on the storage device for execution bythe one or more processors via the memory.
 14. The data processingsystem of claim 10, further comprising: third program instructions, tosend a reminder based on a determination that the deadline is expiring,wherein the third program instructions are stored on the storage devicefor execution by the one or more processors via the memory.
 15. Acomputer program product for updating a plurality of requested actions,the computer program product comprising: one or more computer-readablestorage devices, and program instructions stored on the one or morestorage devices, the program instructions comprising: programinstructions, for execution on the a first computer, to (a) assign firstand second priorities or deadlines to first and second respectiveactions to be performed by first and second participants, respectively,(b) receive a message addressed to the first and second participantsrequesting the first and second participants to perform the first andsecond respective actions with the first and second respectivepriorities or deadlines, and (c) send the message to the first andsecond participants at second and third respective computers,respectively; and program instructions, for execution on the secondcomputer, responsive to receipt of the message by the second computer ofthe first participant, to initiate display of the message at the secondcomputer to the first participant, receive from the first participant(a) a complete response to the first action, (b) an initial assessmentof the first action, or (c) an indication that more time will be neededto provide a complete response to the first action, update the messagewith the complete response, initial assessment of indication that moretime will be needed as received from the first participant, and send theupdated message to the third computer of the second participant fordisplay, such that the second participant receives both the messagebefore the update and subsequently, the updated message.
 16. Thecomputer program product of claim 15, wherein the first and secondpriorities or deadlines includes a priority for the first participant toperform the first action compared to other actions assigned to firstparticipant.
 17. The computer program product of claim 15, wherein thefirst and second priorities or deadlines includes a deadline for thefirst participant to perform the first action.
 18. The computer programproduct of claim 15, wherein the message includes a description of thesecond action.
 19. The computer program product of claim 17, furthercomprising: program instructions, for execution on the second computer,responsive to the receipt of the message, to insert the deadline into acalendar of the first participant.
 20. The computer program product ofclaim 17, further comprising: program instructions, for execution on thefirst computer, to insert the deadline into a calendar of a sender ofthe message; and program instructions, for execution on the firstcomputer, to send a reminder based on a determination that the deadlineis expiring.